`ifndef MYCPU_H
`define MYCPU_H

`define BR_BUS_WD       33
`define FS_TO_DS_WD     64
`define DS_TO_ES_WD     192
`define ES_TO_MS_WD     174
`define MS_TO_WS_WD     168
`define WS_TO_RF_WD     38

//crmd
    `define CSR_CRMD      14'h0000
    `define CSR_CRMD_PLV  1:0
    `define CSR_CRMD_IE   2
    `define CSR_CRMD_DA   3
//prmd
    `define CSR_PRMD      14'h0001
    `define CSR_PRMD_PPLV 1:0
    `define CSR_PRMD_PIE  2
    `define CSR_PRMD_DA   3
//ecfg
    `define CSR_ECFG      14'h0004
    `define CSR_ECFG_LIE  12:0
//estat
    `define CSR_ESTAT     14'h0005
    `define CSR_ESTAT_IS10  1:0
    `define CSR_ESTAT_ECODE  21:16
    `define CSR_ESTAT_ESUBCODE 30:22
//era
    `define CSR_ERA       14'h0006
    `define CSR_ERA_PC    31:0
//eentry
    `define CSR_EENTRY    14'h000c
    `define CSR_EENTRY_VA 31:6
//save
    `define CSR_SAVE0     14'h0030
    `define CSR_SAVE1     14'h0031
    `define CSR_SAVE2     14'h0032
    `define CSR_SAVE3     14'h0033
    `define CSR_SAVE_DATA 31:0
//exc type
    `define EX_INT        6'h00
    `define EX_SYS        6'h0b


`endif